/*
 * JPmodificacuentabanco.java
 *
 * Created on 4 de junio de 2007, 17:15
 */

package pantalla;
import java.sql.*;
import utiles.*;
import java.util.ArrayList;
import java.rmi.*;
import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry;
/**
 *
 * @author  admin
 */
public class JPmodificacuentabanco extends javax.swing.JPanel {
    java.awt.Point punto;
    javax.swing.JComboBox JCBbanco,JCBtipomoneda,JCBtipocuenta;
    //utiles.conexionRmiJdbc conexion,conexionbusqueda;
    funcioncliente.FuncionesControlAcceso fca;
    String datos_trabajadores[][],tiposmon[],bancos[];
    javax.swing.JMenuItem JMIitem[];
    boolean encuentra=false;
    boolean bol_guardar=false,bol_eliminar=false;
    String nombre_trabajador,dni,conecta[];
   
    javax.swing.JInternalFrame jif;
    int num_sul,tiposcu[];
    int indice_seleccion;
    
    
    String identificador;
    
     int posSelCod;
    Utiles_Busqueda popbuscador;
    /** Creates new form JPmodificacuentabanco */
    public JPmodificacuentabanco(String [] cone,String id) {
        initComponents();
        jrbCodigo.setMnemonic(java.awt.event.KeyEvent.VK_O);
        jrbNombre.setMnemonic(java.awt.event.KeyEvent.VK_M);
        jrbCuenta.setMnemonic(java.awt.event.KeyEvent.VK_U);
        
        jbModificar.setMnemonic(java.awt.event.KeyEvent.VK_A);
        jbEliminar.setMnemonic(java.awt.event.KeyEvent.VK_E);
        jbSalir.setMnemonic(java.awt.event.KeyEvent.VK_S);
        jbBuscar.setMnemonic(java.awt.event.KeyEvent.VK_B);
        jbImprimir.setMnemonic(java.awt.event.KeyEvent.VK_I);
       
        identificador=id;
        punto=jtfCodigo.getLocation();
        if (System.getSecurityManager() == null){
 		System.setSecurityManager(new RMISecurityManager());
 		}
        
        try{
			fca=(funcioncliente.FuncionesControlAcceso)java.rmi.Naming.lookup("//"+cone[0]+":"+cone[1]+"/"+cone[2]);
                       
                        }catch(Exception g){
				mensaje("Problemas conectando "+g.toString());
                                g.printStackTrace();
                            
		}
         String consultatt = "select p.codigo_persona, p.nombre, p.Ap_paterno, " +
                    "p.Ap_materno,' - DNI: '+p.codigo_persona from Persona p, Trabajador t where p.codigo_persona = t.dni";                
        int[] coltt = { 3, 4, 2,5 };
        popbuscador =new Utiles_Busqueda( this.jpmNombres, this.jtfCodigo, consultatt, coltt, ConsultasCliRmi.clirmi,punto.x+140,punto.y-2,identificador );
        jtCuentas.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        
    
    }
    
    public void refrescar(){
        
        
        if(jrbCuenta.isSelected()){
            buscacuentas();
        }else{
            busquedatrabajador();
        }
        /*try{
            sueldos.absolute(indice_seleccion++);
            sueldos.refreshRow();
        }catch(java.sql.SQLException e){}
        modelosueldos=new utiles.ModificableTableModel(sueldos);
        JTcuentas.setModel(modelosueldos);*/
    }
    public  void ponerancestro(javax.swing.JInternalFrame jjj){
        jif=jjj;
    }
    
     public void mensaje(String mens){
         javax.swing.JOptionPane.showMessageDialog( this,mens,
      "Mensaje de Informacion",javax.swing.JOptionPane.ERROR_MESSAGE);
    }
  
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jpmNombres = new javax.swing.JPopupMenu();
        buttonGroup1 = new javax.swing.ButtonGroup();
        jrbCodigo = new javax.swing.JRadioButton();
        jrbNombre = new javax.swing.JRadioButton();
        jrbCuenta = new javax.swing.JRadioButton();
        jtfCodigo = new javax.swing.JTextField();
        jbBuscar = new javax.swing.JButton();
        jlTraba = new javax.swing.JLabel();
        jlTrabajador = new javax.swing.JLabel();
        jpPanel1 = new javax.swing.JPanel();
        jsp = new javax.swing.JScrollPane();
        jtCuentas = new javax.swing.JTable();
        jbImprimir = new javax.swing.JButton();
        jbSalir = new javax.swing.JButton();
        jbEliminar = new javax.swing.JButton();
        jbModificar = new javax.swing.JButton();

        buttonGroup1.add(jrbCodigo);
        jrbCodigo.setFont(new java.awt.Font("Arial", 0, 12));
        jrbCodigo.setSelected(true);
        jrbCodigo.setText("Codigo trabajador");
        jrbCodigo.setToolTipText("buscar por codigo");
        jrbCodigo.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        jrbCodigo.setMargin(new java.awt.Insets(0, 0, 0, 0));
        jrbCodigo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jrbCodigoActionPerformed(evt);
            }
        });
        jrbCodigo.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jrbCodigoKeyPressed(evt);
            }
        });

        buttonGroup1.add(jrbNombre);
        jrbNombre.setFont(new java.awt.Font("Arial", 0, 12));
        jrbNombre.setText("Nombre trabajador");
        jrbNombre.setToolTipText("buscar por nombre");
        jrbNombre.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        jrbNombre.setMargin(new java.awt.Insets(0, 0, 0, 0));
        jrbNombre.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jrbNombreActionPerformed(evt);
            }
        });
        jrbNombre.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jrbNombreKeyPressed(evt);
            }
        });

        buttonGroup1.add(jrbCuenta);
        jrbCuenta.setFont(new java.awt.Font("Arial", 0, 12));
        jrbCuenta.setText("Cuenta bancaria");
        jrbCuenta.setToolTipText("buscar por cuenta");
        jrbCuenta.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        jrbCuenta.setMargin(new java.awt.Insets(0, 0, 0, 0));
        jrbCuenta.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jrbCuentaActionPerformed(evt);
            }
        });
        jrbCuenta.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jrbCuentaKeyPressed(evt);
            }
        });

        jtfCodigo.setComponentPopupMenu(jpmNombres);
        jtfCodigo.setFont(new java.awt.Font("Arial", 0, 12));
        jtfCodigo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jtfCodigoActionPerformed(evt);
            }
        });
        jtfCodigo.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                jtfCodigoKeyReleased(evt);
            }
        });

        jbBuscar.setFont(new java.awt.Font("Arial", 0, 12));
        jbBuscar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/fife/plaf/Office2003/find.gif"))); // NOI18N
        jbBuscar.setText("Buscar");
        jbBuscar.setToolTipText("busqueda");
        jbBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbBuscarActionPerformed(evt);
            }
        });
        jbBuscar.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jbBuscarKeyPressed(evt);
            }
        });

        jlTraba.setFont(new java.awt.Font("Arial", 0, 12));
        jlTraba.setText("Trabajador :");

        jlTrabajador.setFont(new java.awt.Font("Arial", 2, 12));
        jlTrabajador.setToolTipText("datos del trabajador");

        jpPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Cuentas Encontradas", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Arial", 1, 12))); // NOI18N

        jsp.setToolTipText("cuentas encontradas");
        jsp.setFont(new java.awt.Font("Arial", 0, 12));

        jtCuentas.setFont(new java.awt.Font("Arial", 0, 16)); // NOI18N
        jtCuentas.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "Num.Cuenta", "Banco", "Tipo Moneda", "Tipo Cuenta", "CTS"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.Boolean.class
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }
        });
        jtCuentas.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_ALL_COLUMNS);
        jsp.setViewportView(jtCuentas);

        jbImprimir.setFont(new java.awt.Font("Arial", 0, 12));
        jbImprimir.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/fife/plaf/Office2003/print.gif"))); // NOI18N
        jbImprimir.setText("Imprimir");
        jbImprimir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbImprimirActionPerformed(evt);
            }
        });
        jbImprimir.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jbImprimirKeyPressed(evt);
            }
        });

        javax.swing.GroupLayout jpPanel1Layout = new javax.swing.GroupLayout(jpPanel1);
        jpPanel1.setLayout(jpPanel1Layout);
        jpPanel1Layout.setHorizontalGroup(
            jpPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jpPanel1Layout.createSequentialGroup()
                .addContainerGap(612, Short.MAX_VALUE)
                .addComponent(jbImprimir)
                .addContainerGap())
            .addComponent(jsp, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 723, Short.MAX_VALUE)
        );
        jpPanel1Layout.setVerticalGroup(
            jpPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jpPanel1Layout.createSequentialGroup()
                .addComponent(jbImprimir)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jsp, javax.swing.GroupLayout.DEFAULT_SIZE, 148, Short.MAX_VALUE))
        );

        jbSalir.setFont(new java.awt.Font("Arial", 0, 12));
        jbSalir.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/fife/plaf/Office2003/close.gif"))); // NOI18N
        jbSalir.setText("Salir");
        jbSalir.setToolTipText("salir");
        jbSalir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbSalirActionPerformed(evt);
            }
        });

        jbEliminar.setFont(new java.awt.Font("Arial", 0, 12));
        jbEliminar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/fife/plaf/Office2003/delete.gif"))); // NOI18N
        jbEliminar.setText("Eliminar");
        jbEliminar.setEnabled(false);
        jbEliminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbEliminarActionPerformed(evt);
            }
        });

        jbModificar.setFont(new java.awt.Font("Arial", 0, 12));
        jbModificar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/fife/plaf/Office2003/replace.gif"))); // NOI18N
        jbModificar.setText("Actualizar");
        jbModificar.setEnabled(false);
        jbModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbModificarActionPerformed(evt);
            }
        });
        jbModificar.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jbModificarKeyPressed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jpPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(17, 17, 17)
                                .addComponent(jlTraba))
                            .addComponent(jrbCodigo)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jrbNombre)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jtfCodigo, javax.swing.GroupLayout.PREFERRED_SIZE, 353, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jbBuscar))
                            .addComponent(jrbCuenta))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 142, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jbModificar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jbEliminar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jbSalir))
                    .addComponent(jlTrabajador, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 620, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jbBuscar, jbEliminar, jbModificar, jbSalir});

        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jrbCodigo)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jrbNombre)
                    .addComponent(jbBuscar)
                    .addComponent(jtfCodigo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jrbCuenta)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jlTraba)
                    .addComponent(jlTrabajador, javax.swing.GroupLayout.PREFERRED_SIZE, 12, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jpPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jbSalir)
                    .addComponent(jbEliminar)
                    .addComponent(jbModificar))
                .addContainerGap(39, Short.MAX_VALUE))
        );

        layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {jbEliminar, jbModificar, jbSalir});

    }// </editor-fold>//GEN-END:initComponents

    private void jbBuscarKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jbBuscarKeyPressed
// TODO: Agrege su codigo aqui:
         if(evt.getKeyCode()==evt.VK_ENTER){
            jbBuscar.requestFocus();
        }
    }//GEN-LAST:event_jbBuscarKeyPressed

    private void jrbCuentaKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jrbCuentaKeyPressed
// TODO: Agrege su codigo aqui:
         if(evt.getKeyCode()==evt.VK_ENTER){
            jtfCodigo.requestFocus();
        }
    }//GEN-LAST:event_jrbCuentaKeyPressed

    private void jrbNombreKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jrbNombreKeyPressed
// TODO: Agrege su codigo aqui:
         if(evt.getKeyCode()==evt.VK_ENTER){
            jtfCodigo.requestFocus();
        }
    }//GEN-LAST:event_jrbNombreKeyPressed

    private void jrbCodigoKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jrbCodigoKeyPressed
// TODO: Agrege su codigo aqui:
         if(evt.getKeyCode()==evt.VK_ENTER){
            jtfCodigo.requestFocus();
        }
    }//GEN-LAST:event_jrbCodigoKeyPressed

    private void jbModificarKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jbModificarKeyPressed
// TODO: Agrege su codigo aqui:
    }//GEN-LAST:event_jbModificarKeyPressed

    private void jbImprimirKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jbImprimirKeyPressed
// TODO: Agrege su codigo aqui:
    }//GEN-LAST:event_jbImprimirKeyPressed

    private void jrbCuentaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jrbCuentaActionPerformed
// TODO: Agrege su codigo aqui:
          this.popbuscador.activarBusqueda(false);
    }//GEN-LAST:event_jrbCuentaActionPerformed

    private void jrbNombreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jrbNombreActionPerformed
// TODO: Agrege su codigo aqui:
          this.popbuscador.activarBusqueda(true);
    }//GEN-LAST:event_jrbNombreActionPerformed

    private void jrbCodigoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jrbCodigoActionPerformed
// TODO: Agrege su codigo aqui:
        this.popbuscador.activarBusqueda(false);
    }//GEN-LAST:event_jrbCodigoActionPerformed

    private void jbImprimirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbImprimirActionPerformed
// TODO add your handling code here:
        try{
            utiles.imprimir.tabla(jtCuentas,true,"Cuentas Bancarias del trabajador "+jlTrabajador.getText().trim(),"");
           
        }catch(Exception e){
            mensaje("Error en la impresion\n"+e.toString());
        }
    }//GEN-LAST:event_jbImprimirActionPerformed

    private void jbModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbModificarActionPerformed
// TODO add your handling code here:
     
        
        try{
        int indice=jtCuentas.getSelectedRow();
        this.refrescar();
        //System.out.println("indice seleciconado "+indice);
        String auxi=jtCuentas.getValueAt(indice,0).toString().trim();
        
        JDmodificarcuentabanco modi=new JDmodificarcuentabanco(javax.swing.JOptionPane.getFrameForComponent(this),true,
                fca,auxi,conecta,this,identificador);
        
        }catch(Exception e){}
        
    }//GEN-LAST:event_jbModificarActionPerformed

    private void jbEliminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbEliminarActionPerformed
// TODO add your handling code here:
         int res = javax.swing.JOptionPane.showConfirmDialog( this,"Esta seguro de eliminar la cuenta?",
      "Confirmar",javax.swing.JOptionPane.YES_NO_OPTION );
         
         if(res==javax.swing.JOptionPane.YES_OPTION ){
            int a=jtCuentas.getSelectedRow();
            String cuenta_elimina=jtCuentas.getValueAt(a,0).toString().trim();
            
            try{
                String ret[]=fca.eliminacuentabancaria(cuenta_elimina,identificador);
                int err=Integer.valueOf(ret[1]);
             if(!ret[0].equalsIgnoreCase("bien")){
               String bla;
               try{
                   bla=utiles.imprimir.errorSQL(err);
               }catch(Exception e){
                   bla=ret[0];
               }
               mensaje("Hubo un error al eliminar la cuenta\n"+bla);
            }else{
                    javax.swing.JOptionPane.showMessageDialog( this,"Cuenta Eliminada con Exito",
                  "Informacion de la transaccion",javax.swing.JOptionPane.INFORMATION_MESSAGE);
                }
                 refrescar();
            }catch(Exception efghi){
                mensaje("Error RMI\n"+efghi.toString());
            }
            
         }
    }//GEN-LAST:event_jbEliminarActionPerformed

    private void jtfCodigoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jtfCodigoActionPerformed
// TODO add your handling code here:
        if(jrbCuenta.isSelected()){
            buscacuentas();
        }else{ 
             if(this.popbuscador.getIndicadorBusqueda()){
        if(this.popbuscador.getHizoEnter())
        busquedatrabajador();
        }
        else{
            busquedatrabajador();
        }
        }
    }//GEN-LAST:event_jtfCodigoActionPerformed

    private void jbSalirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbSalirActionPerformed
// TODO add your handling code here:
        
        cerrar();
    }//GEN-LAST:event_jbSalirActionPerformed
    public   void cerrar(){
          int res = javax.swing.JOptionPane.showConfirmDialog( this,"Esta seguro de salir?",
      "Confirmar",javax.swing.JOptionPane.YES_NO_OPTION );
         if(res==javax.swing.JOptionPane.YES_OPTION){
                   jif.dispose();
                  
         }
      }
    void busquedatrabajador(){
         String nomaux="";
          int cosaux=1;
       if( this.jrbCodigo.isSelected() ){
            this.posSelCod = this.popbuscador.buscaClave( this.jtfCodigo.getText().trim() );
            ArrayList araux=ConsultasCliRmi.consulta("select  p.Ap_paterno +' '" +
                    "+ p.Ap_materno + ' '+ p.nombre from Persona p where p.codigo_persona = '"+this.jtfCodigo.getText().trim()+"'",identificador);
           cosaux=araux.size()-2;
           try{
               nomaux=((ArrayList)araux.get(0)).get(0).toString().trim();
           }catch(Exception e){}
          
        }else if( this.jrbNombre.isSelected() ){
            this.posSelCod = this.popbuscador.getIndice();
            nomaux=this.jtfCodigo.getText().trim();
        }
        
          if(cosaux<1){
              Utiles_MensajesDialogo.mensajeAlerta( "No se encuenta el Trabajador" );
              bol_eliminar=false;
              return;
          }
        if( (this.posSelCod == -1 || !this.popbuscador.getHizoEnter() ) && !jrbCodigo.isSelected() ){
            Utiles_MensajesDialogo.mensajeAlerta( "No se encuenta el Trabajador" );
            bol_eliminar=false;
        }else{
           bol_eliminar=true;
           jlTrabajador.setText(nomaux);
           dni=this.popbuscador.getSoloClave(posSelCod).toString().trim();
           jtCuentas.setModel(ConsultasCliRmi.llenatabla("select id_cuenta_bancaria as [Num. Cuenta],banco.nom_banco as [Banco]," +
                        "tipo_moneda.nom_moneda as [Tipo Moneda] ,tipo_cuenta.nom_tipo_cta as [Tipo Cuenta],flag_cts as [CTS] from " +
                        "cuenta_bancaria inner join banco on cuenta_bancaria.id_banco= banco.id_banco " +
                        "inner join tipo_moneda on cuenta_bancaria.tipo_mon_corr =tipo_moneda.tipo_mon_corr " +
                        "inner join tipo_cuenta on cuenta_bancaria.corr_tipo_cta= tipo_cuenta.corr_tipo_cta" +
                        " where DNI='"+dni+"'",identificador));
          
        } 
         guardar_eliminar();
    }
 
 
    void buscacuentas(){
        String nomaux="",nomaux1="";
   
      
            this.posSelCod = this.popbuscador.buscaClave( this.jtfCodigo.getText().trim() );
            ArrayList araux=ConsultasCliRmi.consulta("select DNI,id_cuenta_bancaria as [Num. Cuenta],id_banco as [Banco]," +
                        "tipo_mon_corr as [Tipo Moneda] ,corr_tipo_cta as [Tipo Cuenta],flag_cts as [CTS] " +
                    "from cuenta_bancaria where  id_cuenta_bancaria='"+jtfCodigo.getText().trim()+"'",identificador);
            try{
            nomaux=((ArrayList)araux.get(0)).get(0).toString();
            ArrayList araux1=ConsultasCliRmi.consulta("select  p.Ap_paterno +' '" +
                    "+ p.Ap_materno + ' '+ p.nombre from Persona p where p.codigo_persona = '"+nomaux+"'",identificador);
            nomaux1=((ArrayList)araux1.get(0)).get(0).toString();
            }catch(NullPointerException e){
                 Utiles_MensajesDialogo.mensajeAlerta("La cuenta no le pertenece a un trabajador");
                 nomaux="";
            }
        
           
        if( (araux.size()-2)<1 ){
            Utiles_MensajesDialogo.mensajeAlerta( "No se encuenta la cuenta" );
            bol_eliminar=false;
            
        }else{
           bol_eliminar=true;
           jlTrabajador.setText(nomaux1);
       
           jtCuentas.setModel(ConsultasCliRmi.llenatabla("select id_cuenta_bancaria as [Num. Cuenta],banco.nom_banco as [Banco]," +
                        "tipo_moneda.nom_moneda as [Tipo Moneda] ,tipo_cuenta.nom_tipo_cta as [Tipo Cuenta],flag_cts as [CTS] from " +
                        "cuenta_bancaria inner join banco on cuenta_bancaria.id_banco= banco.id_banco " +
                        "inner join tipo_moneda on cuenta_bancaria.tipo_mon_corr =tipo_moneda.tipo_mon_corr " +
                        "inner join tipo_cuenta on cuenta_bancaria.corr_tipo_cta= tipo_cuenta.corr_tipo_cta " +
                        "where  id_cuenta_bancaria='"+jtfCodigo.getText().trim()+"'",identificador));
          
        } 
         guardar_eliminar();
                
    }
    private void jbBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbBuscarActionPerformed
// TODO add your handling code here:
        if(jrbCuenta.isSelected()){
            buscacuentas();
        }else{
            busquedatrabajador();
        }
    }//GEN-LAST:event_jbBuscarActionPerformed

    void guardar_eliminar(){
        
        jbEliminar.setEnabled(bol_eliminar);
        jbModificar.setEnabled(bol_eliminar);
    
    }
   
    private void jtfCodigoKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jtfCodigoKeyReleased
// TODO add your handling code here:
        
    }//GEN-LAST:event_jtfCodigoKeyReleased
    
    
     
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.ButtonGroup buttonGroup1;
    private javax.swing.JButton jbBuscar;
    private javax.swing.JButton jbEliminar;
    private javax.swing.JButton jbImprimir;
    private javax.swing.JButton jbModificar;
    private javax.swing.JButton jbSalir;
    private javax.swing.JLabel jlTraba;
    private javax.swing.JLabel jlTrabajador;
    private javax.swing.JPanel jpPanel1;
    private javax.swing.JPopupMenu jpmNombres;
    private javax.swing.JRadioButton jrbCodigo;
    private javax.swing.JRadioButton jrbCuenta;
    private javax.swing.JRadioButton jrbNombre;
    private javax.swing.JScrollPane jsp;
    private javax.swing.JTable jtCuentas;
    private javax.swing.JTextField jtfCodigo;
    // End of variables declaration//GEN-END:variables
    
}
